package com.zrrd.gmall.order.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zrrd.gmall.model.enums.ProcessStatus;
import com.zrrd.gmall.model.order.OrderInfo;

public interface OrderService extends IService<OrderInfo> {

    //保存订单
    Long saveOrderInfo(OrderInfo orderInfo);

    //生成流水号
    String getTradeNo(String userId);

    //比较流水号
    boolean checkTradeNo(String userId, String tradeNo);

    //删除流水号
    void deleteTradeNo(String userId);

    //验证库存
    boolean checkStock(Long skuId, Integer skuNum);

    //更新订单状态
    void updateOrderStatus(Long orderID, ProcessStatus processStatus);

    //查询指定订单信息（包含订单明细）
    OrderInfo getOrderInfo(Long orderId);
}
